package com.ruoyi.qsng.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 课程奖状对象 k_course_diploma
 *
 * @author kanglou
 * @date 2023-06-07
 */
@ApiModel("课程奖状对象 k_course_diploma")
public class KCourseDiploma extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 奖状路径 */
    @Excel(name = "奖状路径")
    @ApiModelProperty("奖状路径")
    private String diplomaUrl;

    /** 课程id */
    @Excel(name = "课程id")
    @ApiModelProperty("课程id")
    private String courseId;

    /** 课程名称 */
    @Excel(name = "课程名称")
    @ApiModelProperty("课程名称")
    private String name;

    /** 教师 */
    @Excel(name = "教师")
    @ApiModelProperty("教师")
    private String teacher;

    /** 教师介绍 */
    @Excel(name = "教师介绍")
    @ApiModelProperty("教师介绍")
    private String teacherContent;

    /** 课程宣传图 */
    @Excel(name = "课程宣传图")
    @ApiModelProperty("课程宣传图")
    private String picture;

    /** 课程介绍 */
    @Excel(name = "课程介绍")
    @ApiModelProperty("课程介绍")
    private String content;

    /** 课程分类 */
    @Excel(name = "课程分类")
    @ApiModelProperty("课程分类")
    private String courseType;

    /** 课程班次 */
    @Excel(name = "课程班次")
    @ApiModelProperty("课程班次")
    private String courseClasses;

    /** 课程地点 */
    @Excel(name = "课程地点")
    @ApiModelProperty("课程地点")
    private String courseLocation;

    /** 班级分类 */
    @Excel(name = "班级分类")
    @ApiModelProperty("班级分类")
    private String classCategory;

    /** 年龄段 */
    @Excel(name = "年龄段")
    @ApiModelProperty("年龄段")
    private String ageGroup;

    /** 总名额 */
    @Excel(name = "总名额")
    @ApiModelProperty("总名额")
    private Integer totalQuota;

    /** 剩余名额 */
    @Excel(name = "剩余名额")
    @ApiModelProperty("剩余名额")
    private Integer remainingQuota2;

    /** 上课时间 */
    @Excel(name = "上课时间")
    @ApiModelProperty("上课时间")
    private String classTime;

    /** 节次 */
    @Excel(name = "节次")
    @ApiModelProperty("节次")
    private Integer section;

    /** 单价 */
    @Excel(name = "单价")
    @ApiModelProperty("单价")
    private BigDecimal price;

    /** 报名开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("报名开始时间")
    @Excel(name = "报名开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date bmKssj;

    /** 报名结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("报名结束时间")
    @Excel(name = "报名结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date bmJssj;

    /** 开课开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("开课开始时间")
    @Excel(name = "开课开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date kkKksj;

    /** 开课结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("开课结束时间")
    @Excel(name = "开课结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date kkJssj;

    /** 课程状态0下架1上架 */
    @Excel(name = "课程状态0下架1上架")
    @ApiModelProperty("课程状态0下架1上架")
    private Integer courseState;

    /** 兑换积分值 */
    @Excel(name = "兑换积分值")
    @ApiModelProperty("兑换积分值")
    private Integer exchangeIntegral;

    /** 报名须知 */
    @Excel(name = "报名须知")
    @ApiModelProperty("报名须知")
    private String notice;

    /** 主键 */
    private String id;

    public void setDiplomaUrl(String diplomaUrl)
    {
        this.diplomaUrl = diplomaUrl;
    }

    public String getDiplomaUrl()
    {
        return diplomaUrl;
    }
    public void setCourseId(String courseId)
    {
        this.courseId = courseId;
    }

    public String getCourseId()
    {
        return courseId;
    }
    public void setId(String id)
    {
        this.id = id;
    }

    public String getId()
    {
        return id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getTeacher() {
        return teacher;
    }

    public void setTeacher(String teacher) {
        this.teacher = teacher;
    }

    public String getTeacherContent() {
        return teacherContent;
    }

    public void setTeacherContent(String teacherContent) {
        this.teacherContent = teacherContent;
    }

    public String getPicture() {
        return picture;
    }

    public void setPicture(String picture) {
        this.picture = picture;
    }

    public String getContent() {
        return content;
    }

    public void setContent(String content) {
        this.content = content;
    }

    public String getCourseType() {
        return courseType;
    }

    public void setCourseType(String courseType) {
        this.courseType = courseType;
    }

    public String getCourseClasses() {
        return courseClasses;
    }

    public void setCourseClasses(String courseClasses) {
        this.courseClasses = courseClasses;
    }

    public String getCourseLocation() {
        return courseLocation;
    }

    public void setCourseLocation(String courseLocation) {
        this.courseLocation = courseLocation;
    }

    public String getClassCategory() {
        return classCategory;
    }

    public void setClassCategory(String classCategory) {
        this.classCategory = classCategory;
    }

    public String getAgeGroup() {
        return ageGroup;
    }

    public void setAgeGroup(String ageGroup) {
        this.ageGroup = ageGroup;
    }

    public Integer getTotalQuota() {
        return totalQuota;
    }

    public void setTotalQuota(Integer totalQuota) {
        this.totalQuota = totalQuota;
    }

    public Integer getRemainingQuota2() {
        return remainingQuota2;
    }

    public void setRemainingQuota2(Integer remainingQuota2) {
        this.remainingQuota2 = remainingQuota2;
    }

    public String getClassTime() {
        return classTime;
    }

    public void setClassTime(String classTime) {
        this.classTime = classTime;
    }

    public Integer getSection() {
        return section;
    }

    public void setSection(Integer section) {
        this.section = section;
    }

    public BigDecimal getPrice() {
        return price;
    }

    public void setPrice(BigDecimal price) {
        this.price = price;
    }

    public Date getBmKssj() {
        return bmKssj;
    }

    public void setBmKssj(Date bmKssj) {
        this.bmKssj = bmKssj;
    }

    public Date getBmJssj() {
        return bmJssj;
    }

    public void setBmJssj(Date bmJssj) {
        this.bmJssj = bmJssj;
    }

    public Date getKkKksj() {
        return kkKksj;
    }

    public void setKkKksj(Date kkKksj) {
        this.kkKksj = kkKksj;
    }

    public Date getKkJssj() {
        return kkJssj;
    }

    public void setKkJssj(Date kkJssj) {
        this.kkJssj = kkJssj;
    }

    public Integer getCourseState() {
        return courseState;
    }

    public void setCourseState(Integer courseState) {
        this.courseState = courseState;
    }

    public Integer getExchangeIntegral() {
        return exchangeIntegral;
    }

    public void setExchangeIntegral(Integer exchangeIntegral) {
        this.exchangeIntegral = exchangeIntegral;
    }

    public String getNotice() {
        return notice;
    }

    public void setNotice(String notice) {
        this.notice = notice;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("diplomaUrl", getDiplomaUrl())
            .append("courseId", getCourseId())
            .append("id", getId())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("name", getName())
            .append("teacher", getTeacher())
            .append("teacherContent", getTeacherContent())
            .append("picture", getPicture())
            .append("content", getContent())
            .append("courseType", getCourseType())
            .append("courseClasses", getCourseClasses())
            .append("courseLocation", getCourseLocation())
            .append("classCategory", getClassCategory())
            .append("ageGroup", getAgeGroup())
            .append("totalQuota", getTotalQuota())
            .append("remainingQuota2", getRemainingQuota2())
            .append("classTime", getClassTime())
            .append("section", getSection())
            .append("price", getPrice())
            .append("bmKssj", getBmKssj())
            .append("bmJssj", getBmJssj())
            .append("kkKksj", getKkKksj())
            .append("kkJssj", getKkJssj())
            .append("courseState", getCourseState())
            .append("exchangeIntegral", getExchangeIntegral())
            .append("notice", getNotice())
            .toString();
    }
}
